package com.tanhua.dubbo.server.api;

import com.tanhua.dubbo.server.pojo.Video;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 *
 * @ClassName: VideoApi
 * @Author:王晨晗
 * @Description: 小视频功能接口
 * @Date: 2022/01/03/11:30
 */
public interface VideoApi {
    /**
     * @description 保存小视频
     * @param video 小视频实体类,封装小视频的信息
     * @return 表示保存是否成功
     */
    Boolean saveVideo(Video video);

    /**
     * @description 查询视频列表
     * @param userId    当前用户id
     * @param page      页数
     * @param pageSize  条数
     * @return 小视频信息集合
     */
    List<Video> queryVideoList(Long userId , Integer page , Integer pageSize);

    /**
     * @description 关注用户
     * @param userId
     * @param followUserId
     * @return
     */
    Boolean followUser(Long userId , Long followUserId);

    /**
     * @description 取消关注
     * @param userId
     * @param followUserId
     * @return
     */
    Boolean disFollowUser(Long userId , Long followUserId);

    /**
     * @description 查询用户是否关注
     * @param userId
     * @param followUserId
     * @return
     */
    Boolean queryIsFollow(Long userId , Long followUserId);

    /**
     * @description 根据视频id查询视频信息
     * @param videoId
     * @return
     */
    Video queryVideoById(String videoId);

    //根据用户id查询所有视频列表
    List<Video> findByUserId(Long uid, Integer page, Integer pagesize, String sortProp, String sortOrder);

}
